/*
============================================================================
 Name        : dd_log.h
 Author      : Jian
 Version     :
 Copyright   : GPL
 Description : dd_log.h - header file
============================================================================
*/

#ifndef DD_LOG_H
#define DD_LOG_H

#include "dd_define.h"

__DD_BEGIN_DECLS

enum {
    DD_LOG_PRIORITY_TRACE = 0,
    DD_LOG_PRIORITY_WARN,
    DD_LOG_PRIORITY_ERROR,
    DD_LOG_PRIORITY_KEYPATH,
    DD_LOG_PRIORITY_NO_LOG
};

extern DD_UINT ddLogPriority ;

#ifdef __DD_LOG

void dd_log_traced(const char* format, ...) ;

void dd_log_warnd(const char* format, ...) ;

void dd_log_errord(const char* format, ...) ;

void dd_log_keypathd(const char* format, ...) ;

#define dd_log_trace     dd_log_traced
#define dd_log_warn      dd_log_warnd
#define dd_log_error     dd_log_errord
#define dd_log_keypath   dd_log_keypathd

#else

#define dd_log_trace(...)
#define dd_log_warn(...)
#define dd_log_error(...)
#define dd_log_keypath(...)

#endif

int dd_log_init() ;

int dd_log_set_prioriry(DD_UINT priority) ;

__DD_END_DECLS

#endif  /* DD_LOG_H */

/* End of File */
